home *** CD-ROM | disk | FTP | other *** search
/ Sky at Night 2007 June / SAN CD 6-2007 CD-ROM 25.iso / pc / Software / AstroGrav_Win / Java / jre1.6.0 / lib / rt.jar / java / nio / ByteBufferAsCharBufferRB.class (.txt) < prev    next >
Encoding:
Java Class File  |  2006-11-29  |  2.0 KB  |  97 lines

  1. package java.nio;
  2.  
  3. class ByteBufferAsCharBufferRB extends ByteBufferAsCharBufferB {
  4.    ByteBufferAsCharBufferRB(ByteBuffer var1) {
  5.       super(var1);
  6.    }
  7.  
  8.    ByteBufferAsCharBufferRB(ByteBuffer var1, int var2, int var3, int var4, int var5, int var6) {
  9.       super(var1, var2, var3, var4, var5, var6);
  10.    }
  11.  
  12.    public CharBuffer slice() {
  13.       int var1 = this.position();
  14.       int var2 = this.limit();
  15.  
  16.       assert var1 <= var2;
  17.  
  18.       int var3 = var1 <= var2 ? var2 - var1 : 0;
  19.       int var4 = (var1 << 1) + this.offset;
  20.  
  21.       assert var4 >= 0;
  22.  
  23.       return new ByteBufferAsCharBufferRB(this.bb, -1, 0, var3, var3, var4);
  24.    }
  25.  
  26.    public CharBuffer duplicate() {
  27.       return new ByteBufferAsCharBufferRB(this.bb, this.markValue(), this.position(), this.limit(), this.capacity(), this.offset);
  28.    }
  29.  
  30.    public CharBuffer asReadOnlyBuffer() {
  31.       return this.duplicate();
  32.    }
  33.  
  34.    public CharBuffer put(char var1) {
  35.       throw new ReadOnlyBufferException();
  36.    }
  37.  
  38.    public CharBuffer put(int var1, char var2) {
  39.       throw new ReadOnlyBufferException();
  40.    }
  41.  
  42.    public CharBuffer compact() {
  43.       throw new ReadOnlyBufferException();
  44.    }
  45.  
  46.    public boolean isDirect() {
  47.       return this.bb.isDirect();
  48.    }
  49.  
  50.    public boolean isReadOnly() {
  51.       return true;
  52.    }
  53.  
  54.    public String toString(int var1, int var2) {
  55.       if (var2 <= this.limit() && var1 <= var2) {
  56.          try {
  57.             int var3 = var2 - var1;
  58.             char[] var4 = new char[var3];
  59.             CharBuffer var5 = CharBuffer.wrap(var4);
  60.             CharBuffer var6 = this.duplicate();
  61.             var6.position(var1);
  62.             var6.limit(var2);
  63.             var5.put(var6);
  64.             return new String(var4);
  65.          } catch (StringIndexOutOfBoundsException var7) {
  66.             throw new IndexOutOfBoundsException();
  67.          }
  68.       } else {
  69.          throw new IndexOutOfBoundsException();
  70.       }
  71.    }
  72.  
  73.    public CharSequence subSequence(int var1, int var2) {
  74.       int var3 = this.position();
  75.       int var4 = this.limit();
  76.  
  77.       assert var3 <= var4;
  78.  
  79.       var3 = var3 <= var4 ? var3 : var4;
  80.       int var5 = var4 - var3;
  81.       if (var1 >= 0 && var2 <= var5 && var1 <= var2) {
  82.          int var6 = var2 - var1;
  83.          int var7 = this.offset + (var3 + var1 << 1);
  84.  
  85.          assert var7 >= 0;
  86.  
  87.          return new ByteBufferAsCharBufferRB(this.bb, -1, 0, var6, var6, var7);
  88.       } else {
  89.          throw new IndexOutOfBoundsException();
  90.       }
  91.    }
  92.  
  93.    public ByteOrder order() {
  94.       return ByteOrder.BIG_ENDIAN;
  95.    }
  96. }
  97.